package com.dragon.pear.modules.sample.web.model.params.order;

import io.swagger.v3.oas.annotations.media.Schema;

/**
 * @author Chris Chan
 * Create on 2025-10-10 04:10
 * Use for: 商品 排序参数
 * Explain:
 * 所有字段取值规则：-1 降序，0 不排序，1 升序
 */
@Schema(description = "商品 排序参数")
public class SmpGoodsOrderParam {
    @Schema(description = "", example = "1")
    private int id;
    @Schema(description = "", example = "1")
    private int code;
    @Schema(description = "", example = "1")
    private int createdBy;
    @Schema(description = "", example = "1")
    private int createdOn;
    @Schema(description = "", example = "1")
    private int isDeleted;
    @Schema(description = "", example = "1")
    private int updatedBy;
    @Schema(description = "", example = "1")
    private int updatedOn;
    @Schema(description = "", example = "1")
    private int description;
    @Schema(description = "", example = "1")
    private int image;
    @Schema(description = "", example = "1")
    private int price;
    @Schema(description = "", example = "1")
    private int stock;
    @Schema(description = "", example = "1")
    private int title;

    // 无参构造方法
    public SmpGoodsOrderParam() {
    }

    // 全参数构造方法
    public SmpGoodsOrderParam(int id, int code, int createdBy, int createdOn, int isDeleted, int updatedBy, int updatedOn, int description, int image, int price, int stock, int title) {
        this.id = id;
        this.code = code;
        this.createdBy = createdBy;
        this.createdOn = createdOn;
        this.isDeleted = isDeleted;
        this.updatedBy = updatedBy;
        this.updatedOn = updatedOn;
        this.description = description;
        this.image = image;
        this.price = price;
        this.stock = stock;
        this.title = title;
    }

    // 全参数create生成器
    public static SmpGoodsOrderParam create(int id, int code, int createdBy, int createdOn, int isDeleted, int updatedBy, int updatedOn, int description, int image, int price, int stock, int title) {
        return new SmpGoodsOrderParam(id, code, createdBy, createdOn, isDeleted, updatedBy, updatedOn, description, image, price, stock, title);
    }

    // 全参数of生成器
    public static SmpGoodsOrderParam of(int id, int code, int createdBy, int createdOn, int isDeleted, int updatedBy, int updatedOn, int description, int image, int price, int stock, int title) {
        return new SmpGoodsOrderParam(id, code, createdBy, createdOn, isDeleted, updatedBy, updatedOn, description, image, price, stock, title);
    }
    // region Getter和Setter方法
    public int getId() {
        return id;
    }

    public SmpGoodsOrderParam setId(int id) {
        this.id = id;
        return this;
    }

    public int getCode() {
        return code;
    }

    public SmpGoodsOrderParam setCode(int code) {
        this.code = code;
        return this;
    }

    public int getCreatedBy() {
        return createdBy;
    }

    public SmpGoodsOrderParam setCreatedBy(int createdBy) {
        this.createdBy = createdBy;
        return this;
    }

    public int getCreatedOn() {
        return createdOn;
    }

    public SmpGoodsOrderParam setCreatedOn(int createdOn) {
        this.createdOn = createdOn;
        return this;
    }

    public int getIsDeleted() {
        return isDeleted;
    }

    public SmpGoodsOrderParam setIsDeleted(int isDeleted) {
        this.isDeleted = isDeleted;
        return this;
    }

    public int getUpdatedBy() {
        return updatedBy;
    }

    public SmpGoodsOrderParam setUpdatedBy(int updatedBy) {
        this.updatedBy = updatedBy;
        return this;
    }

    public int getUpdatedOn() {
        return updatedOn;
    }

    public SmpGoodsOrderParam setUpdatedOn(int updatedOn) {
        this.updatedOn = updatedOn;
        return this;
    }

    public int getDescription() {
        return description;
    }

    public SmpGoodsOrderParam setDescription(int description) {
        this.description = description;
        return this;
    }

    public int getImage() {
        return image;
    }

    public SmpGoodsOrderParam setImage(int image) {
        this.image = image;
        return this;
    }

    public int getPrice() {
        return price;
    }

    public SmpGoodsOrderParam setPrice(int price) {
        this.price = price;
        return this;
    }

    public int getStock() {
        return stock;
    }

    public SmpGoodsOrderParam setStock(int stock) {
        this.stock = stock;
        return this;
    }

    public int getTitle() {
        return title;
    }

    public SmpGoodsOrderParam setTitle(int title) {
        this.title = title;
        return this;
    }

    // endregion Getter和Setter方法
}
